CentOS 7
Sponsored Link

Install CUDA 9.1
2018/01/29
 
Install GPU Computing Platform (GPGPU (General-Purpose computing on Graphics Processing Units)), CUDA (Compute Unified Device Architecture) provided by NVIDIA.
To use CUDA, it needs your computer has NVIDIA Graphic cards and also they are the CUDA-Enabled products.
Make sure the details on the site below. (most products are ready in the past few years)
⇒ https://developer.nvidia.com/cuda-gpus
[1]
[2]
Download CUDA Repository RPM package from the site below and Install it.
⇒ https://developer.nvidia.com/cuda-downloads?target_os=Linux&target_arch=x86_64&target_distro=CentOS&target_version=7&target_type=rpmnetwork
[root@dlp ~]#
rpm -Uvh cuda-repo-rhel7-9.1.85-1.x86_64.rpm

Preparing...                          ################################# [100%]
Updating / installing...
   1:cuda-repo-rhel7-9.1.85-1         ################################# [100%]

# disable usually

[root@dlp ~]#
sed -i -e "s/enabled=1/enabled=0/g" /etc/yum.repos.d/cuda.repo
# install from CUDA, EPEL

[root@dlp ~]#
yum --enablerepo=cuda,epel install cuda-9-1 xorg-x11-drv-nvidia dkms gcc make
[root@dlp ~]#
vi /etc/profile.d/cuda91.sh
# create new

export PATH=/usr/local/cuda-9.1/bin${PATH:+:${PATH}}
export LD_LIBRARY_PATH=/usr/local/cuda-9.1/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
# restart once

[root@dlp ~]#
reboot
[3] Verify installation with a common user to run sample program.
# copy samples

[cent@dlp ~]$
cuda-install-samples-9.1.sh ./

Copying samples to ./NVIDIA_CUDA-9.1_Samples now...
Finished copying samples.
[cent@dlp ~]$
cd ./NVIDIA_CUDA-9.1_Samples/1_Utilities/deviceQueryDrv
# compiledeviceQueryDrv sample

[cent@dlp deviceQueryDrv]$
make
# run deviceQueryDrv sample

[cent@dlp deviceQueryDrv]$
./deviceQueryDrv

./deviceQueryDrv Starting...

CUDA Device Query (Driver API) statically linked version
Detected 1 CUDA Capable device(s)

Device 0: "GeForce GTX 1060 6GB"
  CUDA Driver Version:                           9.1
  CUDA Capability Major/Minor version number:    6.1
  Total amount of global memory:                 6078 MBytes (6373179392 bytes)
  (10) Multiprocessors, (128) CUDA Cores/MP:     1280 CUDA Cores
  GPU Max Clock rate:                            1848 MHz (1.85 GHz)
  Memory Clock rate:                             4004 Mhz
  Memory Bus Width:                              192-bit
  L2 Cache Size:                                 1572864 bytes
  Max Texture Dimension Sizes                    1D=(131072) 2D=(131072, 65536) 3D=(16384, 16384, 16384)
  Maximum Layered 1D Texture Size, (num) layers  1D=(32768), 2048 layers
  Maximum Layered 2D Texture Size, (num) layers  2D=(32768, 32768), 2048 layers
  Total amount of constant memory:               65536 bytes
  Total amount of shared memory per block:       49152 bytes
  Total number of registers available per block: 65536
  Warp size:                                     32
  Maximum number of threads per multiprocessor:  2048
  Maximum number of threads per block:           1024
  Max dimension size of a thread block (x,y,z): (1024, 1024, 64)
  Max dimension size of a grid size (x,y,z):    (2147483647, 65535, 65535)
  Texture alignment:                             512 bytes
  Maximum memory pitch:                          2147483647 bytes
  Concurrent copy and kernel execution:          Yes with 2 copy engine(s)
  Run time limit on kernels:                     No
  Integrated GPU sharing Host Memory:            No
  Support host page-locked memory mapping:       Yes
  Concurrent kernel execution:                   Yes
  Alignment requirement for Surfaces:            Yes
  Device has ECC support:                        Disabled
  Device supports Unified Addressing (UVA):      Yes
  Supports Cooperative Kernel Launch:            Yes
  Supports MultiDevice Co-op Kernel Launch:      Yes
  Device PCI Domain ID / Bus ID / location ID:   0 / 3 / 0
  Compute Mode:
     < Default (multiple host threads can use ::cudaSetDevice() with device simultaneously) >
Result = PASS

# try to test p2pBandwidthLatencyTest sample

[cent@dlp deviceQueryDrv]$
cd ~/NVIDIA_CUDA-9.1_Samples/1_Utilities/p2pBandwidthLatencyTest

[cent@dlp p2pBandwidthLatencyTest]$
make

[cent@dlp p2pBandwidthLatencyTest]$
./p2pBandwidthLatencyTest

[CUDA Bandwidth Test] - Starting...
Running on...

 Device 0: GeForce GTX 1060 6GB
 Quick Mode

 Host to Device Bandwidth, 1 Device(s)
 PINNED Memory Transfers
   Transfer Size (Bytes)        Bandwidth(MB/s)
   33554432                     6108.4

 Device to Host Bandwidth, 1 Device(s)
 PINNED Memory Transfers
   Transfer Size (Bytes)        Bandwidth(MB/s)
   33554432                     6531.4

 Device to Device Bandwidth, 1 Device(s)
 PINNED Memory Transfers
   Transfer Size (Bytes)        Bandwidth(MB/s)
   33554432                     154639.7

Result = PASS

NOTE: The CUDA Samples are not meant for performance measurements. Results may vary when GPU Boost is enabled.
 
Tweet